I want to get if my timestamp now is equal or greater than , but im getting some errors
My code(with error):
{...}
exports.validaforgotpass = async (req, res) => {
{...}
const results = await mysql.execute(query, [req.headers.email]);
var newDateObj = moment(now).toDate();
newdate = moment(newDateObj).format('YYYY-MM-DD hh:mm:ss');
validDate = moment(results[0].codmailtime).format('YYYY-MM-DD hh:mm:ss');
try {
if (results.length < 1) {
return res
.status(401)
.send({ user:{message: "Email não consta em nossa base de dados" }});
}
else if(req.headers.token = results[0].codmailtemp && newdate.isSameOrAfter(validDate)){
return res.status(200).send({ user:{message:'Codigo correto',cod:results[0].codmailtemp}});
}
else{
return res.status(401).send({ user:{message:'Codigo incorreto',cod:results[0].codmailtemp}});
}
} catch {return res.status(500).send({ user:{message:messsage.error}});}
} catch {return res.status(500).send({ user:{message: error.message}});}
};
Someone knows why,and also how to fix it ?
I wasn't putting my variable as date object. I corrected my code as below and it's running well.
var now = new Date();
const moment= require('moment')
try{
newdate = moment(now).format('YYYY-MM-DD hh:mm:ss');
validDate = moment(results[0].codmailtime).format('YYYY-MM-DD hh:mm:ss');
console.log(validDate > newdate)
}catch{
{return res.status(500).send({ user:{message: error.message}});}
}
try {
if (results.length < 1) {
return res
.status(401)
.send({ user:{message: "Email não consta em nossa base de dados" }});
}
else if(req.headers.tok